/**
 * @api {post} /EasyUIDataGrid
 * @apiVersion 0.1.0
 * @apiName EasyUi DataGrid组件
 * @apiGroup EasyUiDataGrid
 * @apiDescription 接收后台数据，生成表格
 * @apiExample  生成表格
 *   <table id="dg"></table>
 *
 *   $('#dg').datagrid({
 *      url:'datagrid_data.json',
 *      columns:[[
 *          {field:'code',title:'Code',width:100},
 *          {field:'name',title:'Name',width:100},
 *          {field:'price',title:'Price',width:100,align:'right'}
 *      ]]
 *    });
 *  @apiExample 根据参数加载表格
 *      $('#dg').datagrid('load', {
 *          name: 'easyui',
 *          address: 'ho'
 *      });
 *
 *  @apiExample 刷新表格
 *      $('#dg').datagrid('reload');
 *
 *  @apiExample 更多参数及配置
 *      参见 http://www.jeasyui.com/documentation/index.php
 *
 */
function easyUiDataGrid() {
    return
}

/**
 * @api {post} /JqueryValidate
 * @apiVersion 0.1.0
 * @apiName JqueryValidate组件
 * @apiGroup Validate
 * @apiDescription 验证输入是否合法
 * @apiExample 组件描述
 *      jQuery Validate 插件为表单提供了强大的验证功能，让客户端表单验证变得更简单，
 *      同时提供了大量的定制选项，满足应用程序各种需求。该插件捆绑了一套有用的验证方法，
 *      包括 URL 和电子邮件验证，同时提供了一个用来编写用户自定义方法的 API。
 *
 * @apiExample 组件常用校验规则
 *     	required:true	必须输入的字段。
 *	    remote:"check.php"	使用 ajax 方法调用 check.php 验证输入值。
 *	    email:true	必须输入正确格式的电子邮件。
 *	    url:true	必须输入正确格式的网址。
 *	    date:true	必须输入正确格式的日期。日期校验 ie6 出错，慎用。
 *	    dateISO:true	必须输入正确格式的日期（ISO），例如：2009-06-23，1998/01/22。只验证格式，不验证有效性。
 *	    number:true	必须输入合法的数字（负数，小数）。
 *	    digits:true	必须输入整数。
 *	    creditcard:	必须输入合法的信用卡号。
 *	    equalTo:"#field"	输入值必须和 #field 相同。
 *	    accept:	输入拥有合法后缀名的字符串（上传文件的后缀）。
 *	    maxlength:5	输入长度最多是 5 的字符串（汉字算一个字符）。
 *	    minlength:10	输入长度最小是 10 的字符串（汉字算一个字符）。
 *	    rangelength:[5,10]	输入长度必须介于 5 和 10 之间的字符串（汉字算一个字符）。
 *	    range:[5,10]	输入值必须介于 5 和 10 之间。
 *	    max:5	输入值不能大于 5。
 *	    min:10	输入值不能小于 10。
 *  @apiExample 组件使用
 *      1.将校验规则写到控件中，例如
 *          <input id="cname" name="name" minlength="2" type="text" required>
 *      2.将校验规则写到js中，例如
 *          $('signupForm').validate({
 *              rules: {
 *                  firstname: "required"
 *              },
 *              messages: {
 *                  firstname: "请输入您的名字"
 *              }
 *          })
 * @apiExample 更多
 *      参见 http://www.runoob.com/jquery/jquery-plugin-validate.html
 */
function validate() {
    return;
}

/**
 * @api {post} /Datepicker
 * @apiVersion 0.1.0
 * @apiName Datepicker日期组件
 * @apiGroup Datepicker
 * @apiDescription 日期控件
 * @apiExample  描述
 *      从弹出框或内联日历选择一个日期。
 *
 * @apiExample  基本使用
 *      $( function() {
 *          $( "#datepicker" ).datepicker();
 *      });
 *      <input type="text" id="datepicker">
 *
 * @apiExample 格式化日期
 *       $(function() {
 *          $( "#datepicker" ).datepicker();
 *          $( "#format" ).change(function() {
 *              $( "#datepicker" ).datepicker( "option", "dateFormat", $( this ).val() );
 *          });
 *      });
 *
 *      <input type="text" id="datepicker" size="30">
 *      <p>格式选项：<br>
 *      <select id="format">
 *          <option value="mm/dd/yy">Default - mm/dd/yy</option>
 *          <option value="yy-mm-dd">ISO 8601 - yy-mm-dd</option>
 *          <option value="d M, y">Short - d M, y</option>
 *          <option value="d MM, y">Medium - d MM, y</option>
 *          <option value="DD, d MM, yy">Full - DD, d MM, yy</option>
 *          <option value="&apos;day&apos; d &apos;of&apos; MM &apos;in the year&apos; yy">With text - 'day' d 'of' MM 'in the year' yy</option>
 *      </select>
 *
 * @apiExample 实用功能
 *      $.datepicker.setDefaults( settings )
 *      为所有的日期选择器改变默认设置。
 *
 *      $.datepicker.formatDate( format, date, settings )
 *      格式化日期为一个带有指定格式的字符串值
 *      更多实用功能可在官网查阅
 *
 * @apiExample  更多
 *      参见  http://api.jqueryui.com/datepicker/
 */
function datepicker() {
    return
}

/**
 * @api {post} /Ztree
 * @apiVersion 0.1.0
 * @apiGroup Ztree
 * @apiName  Ztree树形组件
 * @apiDescription 树形控件
 * @apiExample  构造基本的ztree
 *      var zTreeObj;
 *      // zTree 的参数配置，深入使用请参考 API 文档（setting 配置详解）
 *      var setting = {};
 *      // zTree 的数据属性，深入使用请参考 API 文档（zTreeNode 节点数据详解）
 *      var zNodes = [
 *          {name:"test1", open:true, children:[
 *              {name:"test1_1"}, {name:"test1_2"}]},
 *              {name:"test2", open:true, children:[
 *              {name:"test2_1"}, {name:"test2_2"}]}
 *          ];
 *      $(document).ready(function(){
 *          zTreeObj = $.fn.zTree.init($("#treeDemo"), setting, zNodes);
 *      });
 *
 *      <ul id="treeDemo" class="ztree"></ul>
 *
 * @apiExample  自定义图标
 *      利用 节点数据的 icon / iconOpen / iconClose 属性实现自定义图标，例如
 *      var nodes = [
 *          //父节点展开 折叠时使用相同的图标
 *          { name:"父节点1", icon:"/img/parent.gif"},
 *
 *          //父节点展开 折叠时分别使用不同的图标
 *          { name:"父节点2", iconOpen:"/img/open.gif", iconClose:"/img/close.gif"},
 *
 *          //叶子节点个性化图标
 *          { name:"叶子节点", icon:"/img/leaf.gif"}
 *      ]
 * @apiExample  常用回调函数
 *      设置在settings中的calllback之中,
 *      常用的有：
 *      beforeClick: 用于捕获单击节点之前的事件回调函数，并且根据返回值确定是否允许单击操作
 *      beforeDrag: 用于捕获节点被拖拽之前的事件回调函数，并且根据返回值确定是否允许开启拖拽操作
 *      beforeEditName: 用于捕获节点编辑按钮的 click 事件，并且根据返回值确定是否允许进入名称编辑状态
 *      onRemove: 用于捕获删除节点之后的事件回调函数
 *      beforeRemove: 用于捕获节点被删除之前的事件回调函数，并且根据返回值确定是否允许删除操作
 *      onRename: 用于捕获节点编辑名称结束之后的事件回调函数
 *      更多回调函数请参看官网
 *
 * @apiExample  更多
 *      参见  http://www.treejs.cn/v3/api.php
 */
function ztree() {
    return
}

/**
 * @api {post} /ECharts
 * @apiVersion 0.1.0
 * @apiGroup ECharts
 * @apiDescription 图表组件
 * @apiName  ECharts图表组件
 *
 * @apiExample  绘制一个简单的图表
 *      1.
 *      <body>
 *           <!-- 为 ECharts 准备一个具备大小（宽高）的 DOM -->
 *           <div id="main" style="width: 600px;height:400px;"></div>
 *      </body>
 *      2.
 *      // 基于准备好的dom，初始化echarts实例
 *       var myChart = echarts.init(document.getElementById('main'));
 *
 *      // 指定图表的配置项和数据
 *      var option = {
 *           title: {
 *               text: 'ECharts 入门示例'
 *           },
 *           tooltip: {},
 *           legend: {
 *               data:['销量']
 *           },
 *           xAxis: {
 *               data: ["衬衫","羊毛衫","雪纺衫","裤子","高跟鞋","袜子"]
 *           },
 *           yAxis: {},
 *           series: [{
 *               name: '销量',
 *               type: 'bar',
 *               data: [5, 20, 36, 10, 10, 20]
 *           }]
 *       };

 *      // 使用刚指定的配置项和数据显示图表。
 *      myChart.setOption(option);
 *
 * @apiExample  个性化图标的样式
 *      ECharts 提供了丰富的自定义配置选项，并且能够从全局、系列、数据三个层级去设置数据图形的样式。
 *      例如南丁格尔图：
 *      myChart.setOption({
 *          series : [
 *           {
 *           name: '访问来源',
 *           type: 'pie',
 *           radius: '55%',
 *           data:[
 *               {value:235, name:'视频广告'},
 *               {value:274, name:'联盟广告'},
 *               {value:310, name:'邮件营销'},
 *               {value:335, name:'直接访问'},
 *               {value:400, name:'搜索引擎'}
 *              ]
 *              }
 *          ]
 *      })
 *
 * @apiExample  异步加载
 *      ECharts 中实现异步数据的更新非常简单，
 *      在图表初始化后不管任何时候只要通过 jQuery 等工具异步获取数据后通过 setOption 填入数据和配置项就行
 *
 * @apiExample  更多
 *      参见  http://echarts.baidu.com/index.html
 */
function echarts() {
    return
}

/**
 * @api {post} /BootstrapForm
 * @apiVersion 0.1.0
 * @apiGroup Bootstrap Form
 * @apiName  Bootstrap表单组件
 * @apiDescription 页面生成form表单，将数据传入后端
 * @apiExample  生成表单
 *   <form class="form-horizontal" role="form">
 *       <div class="form-group">
 *           <label for="firstname" class="col-sm-2 control-label">名字</label>
 *           <div class="col-sm-10">
 *               <input type="text" class="form-control" id="firstname" placeholder="请输入名字">
 *           </div>
 *       </div>
 *       <div class="form-group">
 *           <label for="lastname" class="col-sm-2 control-label">姓</label>
 *           <div class="col-sm-10">
 *               <input type="text" class="form-control" id="lastname" placeholder="请输入姓">
 *           </div>
 *       </div>
 *       <div class="form-group">
 *           <div class="col-sm-offset-2 col-sm-10">
 *               <div class="checkbox">
 *               <label>
 *                   <input type="checkbox">请记住我
 *               </label>
 *               </div>
 *           </div>
 *       </div>
 *       <div class="form-group">
 *           <div class="col-sm-offset-2 col-sm-10">
 *               <button type="submit" class="btn btn-default">登录<tton>
 *           </div>
 *       </div>
 *   </form>
 *
 *  @apiExample 更多参数及配置
 *      参见 http://www.runoob.com/bootstrap/bootstrap-forms.html
 *
 */
function bootstrapForm() {
    return
}

/**
 * @api {post} /BootstrapButton
 * @apiVersion 0.1.0
 * @apiGroup Bootstrap Button
 * @apiName Bootstrap按钮组件
 * @apiDescription 根据需求，生成不同样式的按钮
 * @apiExample  基本按钮
 *   <!-- 标准的按钮 -->
 *   <button type="button" class="btn btn-default">默认按钮<tton>
 *   <!-- 提供额外的视觉效果，标识一组按钮中的原始动作 -->
 *   <button type="button" class="btn btn-primary">原始按钮<tton>
 *   <!-- 表示一个成功的或积极的动作 -->
 *   <button type="button" class="btn btn-success">成功按钮<tton>
 *   <!-- 信息警告消息的上下文按钮 -->
 *   <button type="button" class="btn btn-info">信息按钮<tton>
 *   <!-- 表示应谨慎采取的动作 -->
 *   <button type="button" class="btn btn-warning">警告按钮<tton>
 *   <!-- 表示一个危险的或潜在的负面动作 -->
 *   <button type="button" class="btn btn-danger">危险按钮<tton>
 *   <!-- 并不强调是一个按钮，看起来像一个链接，但同时保持按钮的行为 -->
 *   <button type="button" class="btn btn-link">链接按钮<tton>
 *
 * @apiExample  按钮大小
 *   <button type="button" class="btn btn-default btn-lg">大的按钮<tton>
 *   <button type="button" class="btn btn-default btn-sm">小的按钮<tton>
 *   <button type="button" class="btn btn-default btn-xs">特别小的按钮<tton>
 * @apiExample  按钮状态
 *   <button type="button" class="btn btn-default btn-lg ">默认按钮<tton>
 *   <button type="button" class="btn btn-default btn-lg active">激活按钮<tton>
 *
 *  @apiExample 更多参数及配置
 *      参见 http://www.runoob.com/bootstrap/bootstrap-buttons.html
 */
function bootstrapButton() {
    return
}

/**
 * @api {post} /BootstrapStatus
 * @apiVersion 0.1.0
 * @apiGroup Bootstrap Status
 * @apiName  Bootstrap状态组件
 * @apiDescription 根据表单的内容是否符合要求，显示表单的状态
 * @apiExample  成功状态
 *   <div class="form-group has-success">
 *      <label class="control-label" for="inputSuccess1">成功状态</label>
 *      <input type="text" class="form-control" id="inputSuccess1" placeholder="成功状态" >
 *   </div>
 * @apiExample  警告状态
 *   <div class="form-group has-warning">
 *      <label class="control-label" for="inputWarning1">警告状态</label>
 *      <input type="text" class="form-control" id="inputWarning1" placeholder="警告状态">
 *   </div>
 * @apiExample  错误状态
 *   <div class="form-group has-error">
 *      <label class="control-label" for="inputError1">错误状态</label>
 *      <input type="text" class="form-control" id="inputError1" placeholder="错误状态">
 *   </div>
 *
 *  @apiExample 更多参数及配置
 *      参见 http://v3.bootcss.com/css/#forms
 */
function bootstrapStatus() {
    return
}

/**
 * @api {post} /Layer
 * @apiVersion 0.1.0
 * @apiGroup Layer
 * @apiDescription 弹出层组件
 * @apiName Layer弹出层组件
 * @apiExample  基本使用
 *      layer.open({
 *          title: '在线调试'
 *          ,content: '可以填写任意的layer代码'
 *      });
 * @apiExample  常用弹框类型
 *      layer提供了5种层类型。可传入的值有：0（信息框，默认）1（页面层）2（iframe层）3（加载层）4（tips层）。
 *      若你采用layer.open({type: 1})方式调用，则type为必填项（信息框除外）
 *
 * @apiExample  content内容
 *      content可传入的值是灵活多变的，不仅可以传入普通的html内容，还可以指定DOM，更可以随着type的不同而不同
 *      类型：String/DOM/Array，默认：''
 *      例如：
        layer.open({
            type: 1,
            content: '传入任意的文本或html' //这里content是一个普通的String
        });
        layer.open({
            type: 1,
            content: $('#id') //这里content是一个DOM，注意：最好该元素要存放在body最外层，否则可能被其它的相对元素所影响
        });
        //Ajax获取
        $.post('url', {}, function(str){
            layer.open({
                type: 1,
                content: str //注意，如果str是object，那么需要字符拼接。
            });
        });
 *
 * @apiExample  常用参数
 *      type:基本层类型
 *      title:标题
 *      content:内容
 *      area:宽高
 *      offset:坐标
 *      yes:确定回调
 *      cancel:关闭回调
 * @apiExample  更多
 *      参见  http://www.layui.com/doc/modules/layer.html
 *
 */
function layerapi() {
    return
}

/**
 * @api {post} /JqueryAddClear
 * @apiVersion 0.1.0
 * @apiGroup Jquery AddClear
 * @apiDescription 清空操作
 * @apiExample  使用环境
 *   1.引入jQuery到项目中
 *   2.添加 Add Clear 插件到项目中
 * @apiExample  使用方法
 *   确定使用该插件的位置
 *   $(function(){
 *      $("input").addClear();
 *   });
 *
 *   $("input").addClear({
 *      onClear: function(){
 *          alert("call back!");
 *      }
 *   });
 *
 * @apiExample  可选项
 *   option:        type:       default
 *   closeSymbol    string
 *   returnFocus    boolean     true
 *   hideOnBlur     boolean     false
 *   onClear        function    null
 *   display        string      block
 *
 *  @apiExample 更多参数及配置
 *      参见 https://github.com/skorecky/Add-Clear
 */
function jqueryAddClear() {
    return
}

/**
 * @api {post} /Autocomplete
 * @apiVersion 0.1.0
 * @apiGroup Autocomplete
 * @apiDescription Bootstrap自动补全
 * @apiExample 描述
 *      在输入框输入的时候自动补全输入内容
 * @apiExample 使用方法
 *      // Autocomplete
        var availableTags = ["ActionScript", "AppleScript", "Asp", "BASIC", "C", "C++",
                            "Clojure", "COBOL", "ColdFusion", "Erlang", "Fortran", "Groovy",
                            "Haskell", "Java", "JavaScript", "Lisp", "Perl", "PHP", "Python",
                            "Ruby", "Scala", "Scheme"];

        $("#tags").autocomplete({
            source: availableTags
        });
 *@apiExample  更多
 *      参见  http://www.bootcss.com/p/jquery-ui-bootstrap/index.html#autocomplete
 */
function autoComplete() {
    return
}

/**
 * @api {post} /MultiSelect
 * @apiVersion 0.1.0
 * @apiGroup MultiSelect
 * @apiDescription 多选下拉框
 * @apiExample 描述
 *      使用多选下拉框选择多条记录
 * @apiExample 引入
 *     	需要依次引入如下js,css
 *     	jQuery.js
 *     	jquery-ui.min.js
 *     	jquery-ui.css
 *     	jquery.multiselect.js
 *     	jquery.multiselect.css
 * @apiExample 使用方法
 *      // multiSelect
 *       $(function(){
 *		    $("select").multiselect({
 *		        noneSelectedText: "==请选择==",
 *		        checkAllText: "全选",
 *		        uncheckAllText: '全不选',
 *		        selectedList:4
 *		    });
 *		});
 *@apiExample 获取选中的值
 *			var value = $(id).multiselect("getChecked").map(function(){    
 *   			return this.value; 
 *   		});
 *@apiExample  更多
 *       参见  https://github.com/ehynds/jquery-ui-multiselect-widget
 */
function multiSelect() {
    return
}

/**
 * @api {post} /jsPlumb
 * @apiVersion 2.2.8
 * @apiGroup jsPlumb
 * @apiDescription 拖拽流程图实现
 * @apiName jsPlumb组件
 * @apiExample  初始化
 *     jsPlumb.getInstance({
 *         ...相关样式设置
 *      });
 * @apiExample  添加连接点
 *      instance.addEndpoint（...设置样式...）
 *
 * @apiExample  注册实体
 *     $.draggable(..设置实体位置...)
 *
 * @apiExample  删除模型
 *     instance.remove();
 *     删除注册的实体类（包括连线）
 * @apiExample  更多
 *      参见 https://jsplumbtoolkit.com//
 *
 */
function jsPlumb() {
    return
}
